/**
 * 补齐n位，不够前面用0补齐
 * @param {Number｜String} value 需要处理的值
 * @param {Number} len 默认 64 位
 * @returns {String}
 */
export const AddPreZero = (value, len = 64) => {
  let t = value.toString().length;
  let s = "";
  for (var i = 0; i < len - t; i++) {
    s += "0";
  }
  return s + value;
};

/**
 * 处理数据函数
 * data的组成，由：0x + 要调用的合约方法的function signature + 要传递的方法参数，每个参数都为64位(对transfer来说，第一个是接收人的地址去掉0x，第二个是代币数量的16进制表示，去掉前面0x，然后补齐为64位)
 * data: '0x' + 'a9059cbb' + addPreZero(collection.substr(2)) + addPreZero(web3.utils.toHex(math.multiply(amount, Math.pow(10, 18))).substr(2))
 * @param prefix 前缀，默认为 "0x"
 * @param type 类型，默认为空字符串
 * @param suffix 后缀，默认为空字符串
 * @returns 拼接后的字符串
 */
export const HandleData = ({ prefix = "0x", type = "", suffix = "" }) => {
  return `${prefix}${type}${suffix}`;
};
